1. Field of the Invention
The present invention relates to a packet size control method and apparatus in a packet transfer system.
2. Description of the Related Art
In data transmission through a network having a relatively large transfer delay, there has been known a problem such that the sending processing is blocked during a time period from transmission of a send window of data until reception of an acknowledgment (ACK) from a receiving side in the case where the product of bandwidth (or transfer rate) and round trip time (RTT) that is a delay time required for data round trip is greater than the size of a send window. This makes it difficult to use available network bandwidth effectively and enable data transfer with efficient throughput.
One of conventional techniques to solve this problem has been disclosed in Japanese Patent Application Unexamined Publication No. 09-247209. This prior art offers a system in which the transfer delay of a network is converted to a virtual window size, and the virtual window size is added to the send window size to create a new send window size, whereby data transfer can be performed in the new send window size without receiving the ACK. This is how the prior art attempts to avoid the blocking of the transmission processing.
As another technique, Japanese Patent Application Unexamined Publication No. 11-127163 discloses such a window control method as to use the least, from among the idle capacity of a transmitting/receiving buffer, the idle capacity of a receiving buffer, and the product of maximum available band and delay time (round trip time), as the maximum window size. In this method, the maximum available band is determined according to conventional resource reservation protocol.
This type of prior art is also disclosed in Japanese Patent Application Unexamined Publication Nos. 11-225166, 09-116572 and 61-264838.
When using the above-mentioned technique disclosed in Japanese Patent Application Unexamined Publication No. 09-247209, the send window size may exceed an actual receiving buffer size prepared on the receiving side. There occurs no trouble as long as the receiving side performs data receiving processing without any delay at a rate equal to or higher than that at which data arrive. However, the receiving side may temporarily delay the receiving processing to cause interrupt of data processing in the receiving buffer. Further, an error in transmitting data may be caused by noise on the network to close a certain amount of receiving buffer area for an erroneous segment size of transfer data for re-transmission processing. In these cases, part of data sent from the sending side exceeds the storage capacity of the receiving buffer, which may cause unnecessary re-transmission processing for a segment of correct incoming data.
A send window has to make sure that the receiving side can perform reception processing securely in the transfer process. However, if the transmitting side unilaterally up-sizes the send window as in the technique disclosed in the above-mentioned publication, the receiving side may not be able to receive part of data. The above-mentioned other prior art techniques also put an emphasis on how to calculate the data size and disclose no effective solution to this problem.